package com.ntschy.bt.entity.dataobject;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ntschy.bt.entity.enums.BtSupplyShopStatusEnum;
import com.ntschy.bt.entity.enums.BtSupplyShopTypeEnum;
import com.ntschy.common.core.entity.enums.SysCategoryEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 供需超市对象 bt_supply_shop
 *
 * @author cm
 * @date 2020-12-28
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@TableName("bt_supply_shop")
@ApiModel(description = "供需超市实体类")
public class BtSupplyShop {

    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @TableId
    @ApiModelProperty(value = "主键ID")
    private String id;

    /**
     * 供需类型 1-厂房出租 2-委托加工 3-产品供求 4-楼宇信息
     */
    @TableField("type")
    @ApiModelProperty(value = "供需类型 1-厂房出租 2-委托加工 3-产品供求 4-楼宇信息")
    private BtSupplyShopTypeEnum category;

    /**
     * 标题
     */
    @TableField("title")
    @ApiModelProperty(value = "标题")
    private String title;

    /**
     * 发布内容
     */
    @TableField("PublishContent")
    @ApiModelProperty(value = "发布内容")
    private String publishContent;

    /**
     * 企业名称
     */
    @TableField("CompanyName")
    @ApiModelProperty(value = "企业名称")
    private String companyName;

    /**
     * 企业地址
     */
    @TableField("Location")
    @ApiModelProperty(value = "企业地址")
    private String location;

    /**
     * 租金
     */
    @TableField("Rent")
    @ApiModelProperty(value = "租金")
    private BigDecimal rent;

    /**
     * 联系人
     */
    @TableField("LinkMan")
    @ApiModelProperty(value = "联系人")
    private String linkMan;

    /**
     * 联系电话
     */
    @TableField("LinkPhone")
    @ApiModelProperty(value = "联系电话")
    private String linkPhone;

    /**
     * 上传时间
     */
    @TableField("UploadTime")
    @ApiModelProperty(value = "上传时间")
    private String uploadTime;

    /**
     * 创建人ID
     */
    @TableField(fill = FieldFill.INSERT, value = "CreateUserId")
    @ApiModelProperty(value = "创建人ID")
    private String createUserId;

    /**
     * 创建人姓名
     */
    @TableField(fill = FieldFill.INSERT, value = "CreateUserName")
    @ApiModelProperty(value = "创建时间")
    private String createUserName;

    /**
     * 提交人ID
     */
    @TableField(fill = FieldFill.INSERT, value = "CommitUserId")
    @ApiModelProperty(value = "提交人ID")
    private String commitUserId;

    /**
     * 提交人姓名
     */
    @TableField(fill = FieldFill.INSERT, value = "CommitUserName")
    @ApiModelProperty(value = "提交人姓名")
    private String commitUserName;

    /**
     * 提交时间
     */
    @TableField("CommitTime")
    @ApiModelProperty(value = "提交时间")
    private String commitTime;

    /**
     * 状态 1-待提交 2-待审核 3-已完成
     */
    @TableField("Status")
    @ApiModelProperty(value = "状态 1-待提交 2-待审核 3-已完成")
    private BtSupplyShopStatusEnum status;

    /**
     * 审核人ID
     */
    @TableField(fill = FieldFill.INSERT, value = "ExamineUserId")
    @ApiModelProperty(value = "审核人ID")
    private String examineUserId;

    /**
     * 审核人姓名
     */
    @TableField(fill = FieldFill.INSERT, value = "ExamineUserName")
    @ApiModelProperty(value = "审核人姓名")
    private String examineUserName;

    /**
     * 审核时间
     */
    @TableField("ExamineTime")
    @ApiModelProperty(value = "审核时间")
    private String examineTime;

    /**
     * 审核备注
     */
    @TableField("ExamineOpinion")
    @ApiModelProperty(value = "审核备注")
    private String examineOpinion;

    /**
     * 审核结果 1-审核通过 2-审核退回
     */
    @TableField("ExamineResult")
    @ApiModelProperty(value = "审核结果 1-审核通过 2-审核退回")
    private Long examineResult;

    /**
     * 是否删除 0-正常 1-已删除
     */
    @TableField("DelFlag")
    @ApiModelProperty(value = "是否删除 0-正常 1-已删除")
    private Long delFlag;

    /**
     * 1-上架 2-下架
     */
    @TableField("Shelf")
    @ApiModelProperty(value = "1-上架 2-下架")
    private Long shelf;

    /**
     * 关注数
     */
    @TableField("Focus")
    @ApiModelProperty(value = "关注数")
    private Long focus;

}
